Wersja dla HDD:
18.08.2002
Zmiany:
1. Głupi błąd powodował problemy z kompilacją ostatniej wersji softu
przy zastosowaniu 4 wierszowego wyświetlacza LCD. Poprawiono.
Pobierz: MIS_yampp_020818.zip
07.08.2002
Zmiany:
1. Dodano kolejne dwa standardy pilotów: SONY15 i Philips RC-5.
2. Zmieniono definiowanie typu pilota. Od teraz każdy pilot posiada
swój własny plik z definicją kodów znajdujący się wewnątrz katalogu
"REMOTES". Żeby wybrać model pilota wystarczy skopiować właściwy plik z
katalogu "REMOTES" do katalogu z plikami źródłowymi oprogramowania i
zmienić jego nazwę na "remote.def". Następnie wystarczy przekompilować
program i gotowe.
3. Dodano automatyczne rozpoznanie standardu w jakim nadaje dany pilot
podczas procedury definiowania kodów. Teraz można ustawić kody pilota
nawet bez podłączonego dysku. Po uruchomieniu procedury definiowania
kodów wystarczy kilkakrotnie nacisnąć dowolny przycisk na pilocie a
wówczas yampp rozpozna i wyświetli standard Twojego pilota.
4. Dodano definicje dla dwóch nowych modeli pilotów: od karty tunera TV
- FLY VIDEO oraz popularny RC26 (w standardzie RC5).
5. Dodano opcję dla innego sposobu działania klawisza "PREVOUS" (działa
jak w innych odtwarzaczach CD).
6. Poprawiono procedury ATA.
7. Dodano opcję wyświetlania czasu pozostałego do końca utworu ("Remain
Time"). Pokazuje poprawny czas jedynie dla plików MP3 skompresowanych
na 128kbps. Jeśli chcesz skorzystać z tej opcji i posiadasz wyświetlacz
4 liniowy musisz wyłączyć jakąś inną opcję żeby uzyskać trochę miejsca
na dodatkowy kod.
8. Usunięto wieszanie się yamppa ("Loading..." na wyświetlaczu) przy
załączonej opcji "FAST LOAD" i niepoprawnej organizacji katalogów i
plików na dysku.
9. Dodano opcję "CHECK_FILESIZE" dla usunięcia występujących czasem
problemów z obcinaniem końcówek utworów.
26.07.2002
Zmiany:
1. Zmiany w procedurach obsługi IDE. Teraz yampp powinien współpracować
z większą ilością modeli dysków, oraz poprawiono problemy z komunikacją
z HDD.
21.07.2002
Zmiany:
1. Duże zmiany w procedurach odczytu pliku MP3 z dysku oraz jego
wysyłania do VS1001 mające na celu przyspieszenie działania oraz spore
zmniejszenie długości kodu.
2. Dodano skrolowanie nazwy katalogu na 4 liniowych wyświetlaczach LCD.
3. Dodano centrowanie wyświetlania nazwy katalogu jeśli jej długość
jest mniejsza niż rozmiar wyświetlacza (na 4 liniowych LCD).
4. Poprawiono błąd wyświetlania dla 4x16 LCD.
5. Ładniejszy wskaźnik głośności na wyświetlaczach o długości linii
większej niż 16 znaków.
6. Poprawiono błąd przypadkowego zawieszania się yamppa przy szybkim
przewijaniu do przodu poza koniec utworu.
14.07.2002
Zmiany:
1. Dodano obsługę kilku nowych typów wyświetlaczy LCD. Teraz yampp
powinien działać z wyświetlaczami o organizacji: 2x16, 2x20, 2x24,
4x16, 4x20. Wyboru można dokonać w pliku Constants.h .
2. Jeżeli cały tekst scrolla zmieści się na wyświetlaczu to nie jest on
skrolowany (na wszystkich typach LCD).
3. Usunięto sygnaturkę " >> " jeśli tekst nie wymaga skrolowania.
4. Usunięto znak "/" na końcu nazwy katalogu na 4 liniowych
wyświetlaczach LCD.
5. Usunięto możliwość wyłączenia nawigacji "Directory navigation". Jest
ona wymagana przez nową procedurę Random i musi być zawsze włączona.
6. Kolejna optymalizacja kodu, żeby uzyskać kolejnych kilka bajtów
wolnego miejsca.
7. Zmieniony pasek postępu. Jeśli komuś nie odpowiada nowy wygląd to
może powrócić do starego poprzez zakomentowanie #define PROGRESBAR_II w
sekcji LCD z pliku Constants.h .
8. Dodano opcję umożliwiającą wykorzystanie wolnego pinu PD4 procesora
jako wyjścia sygnału RESET dla VS1001 i interfejsu IDE. Wymaga to
niewielkiej modyfikacji płytki yamppa (dwa cięcia ścieżek i dwa
dodatkowe połączenia przewodem).
09.07.2002
UWAGA !! WERSJA
EKSPERYMENTALNA !!!
Zmiany:
1. Poprawiono błąd obcinający pierwszy znak nazwy katalogu na LCD 4x20.
2. Poprawiono błąd "przekręcania się" paska postępu przy odtwarzaniu
bardzo długich plików MP3.
3. Dodano funkcje random wewnątrz jednego katalogu (tak jak w sofcie
dla CD-ROM). Udało się to jedynie przy pomocy duuużej optymizacji kodu,
przepisaniu kilku funkcji w asemblerze oraz zastosowaniu kilku innych
trików. To spowodowało EKSPERYMENTALNY status tej wersji ponieważ
musiałem dokonać zmian w wielu miejscach programu, i nie jestem pewien
czy to zadziała z wszystkimi możliwymi konfiguracjami sprzętu. Jeżeli
twój HDD nie chce wystartować spróbuj załączyć opcje "CHS_ACCES_FIRST",
lecz wymaga to wyłączenia jakiejś innej opcji (np.: Fast Rewind czy
Number Navigation) żeby uzyskać trochę miejsca na dodatkowy kod.
25.06.2002
Zmiany:
1. Poprawiono błąd powodujący zamazywanie trzeciej linii wyświetlacza
LCD (na wyświetlaczach 4x20).
2. Optymalizacja długości kodu procedur obsługi LCD.
3. Drobne zmiany w procedurach wysyłania danych MP3 do VS1001.
22.06.2002
Zmiany:
1. Niewielkie zmiany w procedurze resetującej układ VS1001.
2. Dodano sprawdzanie czy vs1001 nie zresetował się samoczynnie (jeżeli
dane MP3 zawierały śmieci) - to powodowało samoczynną zmianę szybkości
odtwarzania jeśli zastosowano kwarc inny niż 12.288 lub 24.576 MHz.
Jeżeli taka sytuacja nastąpi oprogramowanie spróbuje wysłać komendę
"soft-reset" do vs1001 co przywraca zawartość rejestru CLOCKF.
3. Rozszerzona funkcja random. Nigdy nie usłyszysz dwukrotnie tego
samego utworu jeśli nie zostaną odtworzone wszystkie dostępne utwory.
4. Kilka mniejszych poprawek i optymalizacji długości kodu.
11.06.2002
Zmiany:
1. Ta wersja obsługuje zarówno standardowego yampp'a-3 jak i NOWĄ
wersję odtwarzacza - yampp-3/USB.
W tej wersji programu port USB nowego yamppa nie
jest wykorzystany, i nowy odtwarzacz działa jak standardowy
yampp-3.
Ponieważ nowa wersja yamppa zaopatrzona została w procesor
Atmega161, kompilacja pod nową wersję musi być poprzedzona poprzez
odkomentowanie definicji "#define YAMPP3USB" w pliku
Constants.h ORAZ poprzez zmianę typu procesora w pliku
"makefile".
Wyboru typu procesora można dokonać poprzez wybór jednej z
poniższych definicji (w "makefile"):
MCU = at90s8515 or MCU = atmega161
Uwaga. W pliku "makefile" znak komentarza to # , a nie //
!!!
Mając do dyspozycji procesor Atmega161 można załączyć
większość (lub wszystkie) funkcje programu ponieważ posiada on dwa razy
więcej pamięci na kod.
2. Wszystkie zdefiniowane w programie teksty są teraz wyświetlane z
pamięci flash, a nie z ich kopii trzymanej w pamięci RAM procesora. To
powinno rozwiązać problemy z załączeniem uarta i trybem "easy remote
codes setup".
3. Polecenie "make" tworzy dodatkowo plik "yampp3.bin" używany przez
program "yboot" czyli "USB code downloader".
POPRAWKA 13.06.2002
Mały błąd w procedurze odbioru z uarta powodował brak odbioru komend z
uarta w wersji yampp-3/USB (dzięki Jesper !)
Proszę pobrać poprawioną wersję kodu.
05.06.2002
Zmiany:
1. Poprawiono błąd występujący w wersjach z dnia 4.5.2002 i 24.5.2002
polegający na wysyłaniu na wyjście audio sygnału w przeciw fazie.
2. Zmiany w pliku definiującym rozkazy pilota (rec80.h). Teraz każdy
model pilota posiada dodatkowo definicję standardu kodów. Jeśli chcesz
wykorzystać swoje definicje rozkazów to nie podmieniaj w całości nowego
pliku rec80.h !!!
3. Poprawiono wyświetlanie kodów w trybie "easy remote codes setup" na
wyświetlaczach LCD 4x20 znaków.
24.05.2002
Zmiany:
1. Poprawiono bezpośredni wybór numeru utworu oraz zwiększono
opóźnienie podczas odczytu klawiszy numerycznych.
2. Dodano obsługę wyświetlaczy LCD o organizacji 4x20. Wystarczy
zmienić definicję LCD_LINES i pliku Constants.h, skompilować ponownie
kod i cieszyć się czteroliniowym wyświetlaczem !
Organizacja czterowierszowego wyświetlacza:
linia 1 - Nazwa katalogu
linia 2 - Nazwa pliku , przewija się jeżeli jest dłuższa niż 20 znaków
linia 3 - Pasek postępu + czas utworu
linia 4 - Numer utworu + Status random + Status loudness + wskaźnik
głośności
Niestety nie posiadam takowego wyświetlacza (choć dzięki Darkowi kod
jest wstępnie przetestowany) wiec jeśli coś jest nie tak to proszę o
maila.
04.05.2002
Zmiany:
1. Dodano informacje o rozmiarze klastra jeżeli jest on niepoprawny.
2. Przepisano procedury obsługi VS1001 w asemblerze
(podziękowania dla Jaspera)
3. Zmieniono metodę odczytu dysku do bufora i wysyłania danych do
VS1001 (podziękowania dla TH)
4. Usunięto przyczynę wyświetlania ostrzeżenia przy kompilacji modułu
lcd.c
5. Dodano dwie skompilowane wersje kodu dla kwarców 12.288 i 25.576MHz
22.02.2002
Zmiany:
1. Dodano definicje dla obsługi pilota CREATIVE_INFRACD (w pliku
rec80.h) - standard NEC80.
2. Powiększono możliwości konfiguracyjne w pliku Constants.h
3. Zmieniono procedury inicjujące player żeby zaoszczędzić na długości
kodu.
18.02.2002
Zmiany:
1. Poprawiono błędy na na końcu utworów przy dużych rozmiarach
klastrów.
2. Optymalizacja procedur obsługi pilota dla zmniejszenia zajętości
pamięci.
3. Poprawiono komentarze i czytelność kodu źródłowego.
06.02.2002
Zmiany:
Added Sony RMD335 remote protocol. Thanks to
Martin for the code.
This is thrid avaliable transmit protocol
supported by yampp software.
03.02.2002
Changes:
Added trap for quickly repeated codes from some
remote controlers. This problem cause a imposibles to change
random, loudnes, and direct song number entering from remote.
31.01.2002
Changes:
Edhanced easy remote codes setup.
Generally yampp support two remote transmit prococols named "REC80" and
"NEC80". Rest of remote types definitions has only diffrernt codes, and
use one of these protocols. If you try to setup codes, and you see on
LCD only "IR:" string and flashing star, that your remote use different
protocol. Try both of above general protocols (uncomment #define REC80
OR #define NEC80).
If both fail - your remote is not yampp compatibile (in current
software state) :-(
29.01.2002
Changes:
1. Added direct number song entering from numeric keypad on remote
controller. Simple press 2 for song no. 2, 63 for song no.
63 etc.
2. Code clearing again :-)
3. Local key definitions MOVED to "Constants.h" file !
4. Added easy remote codes setup. If you uncomment the #define
SETUP_REMOTE_CODES line in Constants.h file, you see remote codes
on yampp LCD display.
Not need to connect yampp to PC serial terminal !
5. After some optimisations GCC compiler generates a warning during
compile "lcd.c" module. Its not a trouble, and you not impressed them.
Jasper also does some modifications in this code (thanks Jasper !).
This is him changes.
1. Some small size optimisations
2. Added some more remote data
3. Fixed problem in calculation of FirstDataSectorD for large disks
Some Jasper optimisations causes a little problem with my LCD
display, therefore i do some changes again.
26.01.2002
Changes:
1. Little code clearing.
2. Add option for propper song time display on older that "K" versions
of VS1001 chip. This option is configurable in "Constants.h" file,
section VS1001.
3. Fixed local keyboard procedures to avoid problems with contact
vibrations.
22.01.2002
Changes:
1. Added a Fast Rewind function. Need setup its code for remote
controller (in rec80.h). Of cousre remote Fast Rewind own the
repeat feature.
2. Local key association is changed. Now key layout is:
| Key No.: |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
| Short press |
Random |
Play / Pause |
Next |
Prev |
Next Dir |
Prev Dir |
Vol Up |
Vol Down |
| Long press |
Loudness |
Stop |
F. Forward |
F. Rewind |
Next 10 |
Prev 10 |
Vol Up |
Vol Down |
3. Fixed small mistake in volume change procedures.
4. Added option in Constans.h for easy setup remote codes.
5. If VS1001 needs to more data (eg. not respond) its be soft resetted.
This may help in some situations after FastForward and Rewind.
6. Added FAT16 support. Setup its in Constants.h (thanks to
Pelos for idea)
7. Solved problems with compilation warnings
To get more code space i must turn off the UART (in Constants.h).
For make its avaliable agin your must turn off some other options.
Current default options:
Directory nav. ON, Letter nav. OFF, Fast forward ON, Fast Rewind ON,
PowerUp beeps OFF, Show remote codes OFF, Fast file load ON, Uart OFF,
FAT16 OFF.
<>ERRATA -
25.01.2001
Declarations in "Constants.h" and precompiled file "Yampp3.rom" from
"MIS_yampp_020122.zip" unfortunally be configured for use FAT16 and 12.8
MHz VS1001 crystal.
Wrong FAT type declaration cause that your yampp hang up on
"Loading..." message on LCD.
Now configuration is revert to FAT32 and 24.576 Mhz, and new rom file
is generated. Name still unchanged.
Unfortunally only 4 and 8 KB cluster sizes is usable on FAT16 disks.
>
20.01.2002
Changes:
1. Added autorepeat on remote controller keys: Volume Up/Down and Fast
Forward. (Ufff, finger... :-)
2. Small modification to song time display. Now it counting up to 99
min.
3. Little code clearing.
15.01.2002
Current features:
1. Improved song navigation
- Skip to next directory or prevous directory, and/or next/prevous
letter
- Fast Forward function.
- In random mode keys "Next" and "Previous" do randomize.
2. Improved display function
- Displaying actual folder name on LCD and UART
- Improved progress bar
3. Other changes
- HDD spindown after "Stop" ( yes!!!!! , Silence !)
- Stored autoplay status (flags) in eeprom
- HDD spindown after file scanning if autoplay is not setted on power
up
- Added option for remove three beeps after power up (to save code
space)
- Faster repeat on Volume keys
- Clear display after song ends, now working properly :-)
- Fixed problems on end of song play.
- Showing remote codes on terminal now configurable in Constants.h
(on/off)
- Fast song load inside one directory. This function is experimental,
and configurable in Constants.h, because needed propertly arranged
file on disk (no mp3 in root directory) Very cool function on slow
and/or big harddisk with many mp3 files.
Most of new features can be enabled or disabled in Constants.h
file.
Additional informations:
Code size is near the top of flash capacity we have to choose between
some configurable options in Constants.h to get code size less than
0x2000 (or 8192 decimaly). Code size is shown after compilation in last
line (dec, hex).
Default options: Directory nav. ON, Letter nav. OFF,
Fast forward ON, PowerUp beeps OFF, Show remote codes OFF, Fast file
load ON.
Rom file is compiled for 7.372MHz yampp-3 and 24.576MHz VS1001
clock. Recompile this code needs AVR-GCC 3.0 or later.
VS1001K decoder chip version is recommended for this code. On older
chip versions may appear some problems with fast forward function.
Questions and bug reports send to: romek_b@o2.pl
Return to main page